const app = getApp();
const db = wx.cloud.database();
const teaDb = db.collection('teacher');
// 引入SDK核心类，js文件的位置可自行放置
const QQMapWX = require('../../utils/qqmap-wx-jssdk.js')
// 创建QQMapWX实例46MBZ-C5CC3-BCK3Z-OFWZU-LATBV-QXBZH AKKBZ-7UJEV-E4XPR-5BW36-QF46S-TIF5V
const qqmapsdk = new QQMapWX({ key:'46MBZ-C5CC3-BCK3Z-OFWZU-LATBV-QXBZH'}) 

Page({
  data: {
    markers: [{
      id: 1,			// 标记点id
      // iconPath: '/images/gps.png',	// 图标路径
      longitude: 113.84062100000006, 		// 经度
      latitude: 22.978790000000007,		// 维度
      label: {
        content: '东莞城市学院', // 标记上显示的文本
        color: '#000',           // 文本颜色
        fontSize: 14,            // 字体大小
        bgColor: '#ffffff',      // 背景色
        padding: 5,              // 内边距
        borderRadius: 4          // 圆角
      }
    }],
    poptext:"正在获取位置...",
    showPopup: false
  },

  handleClick() {
    this.onShow();
    this.openPopup();
    setTimeout(() => {
      if (this.data.markers[0].label.content=='东莞城市学院') {
        console.log(this.data.markers[0].label.content)
        this.onPopupClose()
        this.setData({
          poptext:'位置校验成功'
        })
        this.enter(); // 延迟后执行的函数
        }else {
          this.setData({
            poptext:'未在指定位置'
          })
          setTimeout(() => {
            this.onPopupClose()
            }, 1000);
        }
    }, 2000);
    this.setData({
      poptext:'正在获取位置...'
    })
  },

  onShow: function() {
    // 1. 先使用微信原生API获取当前位置
    wx.getLocation({
      type: 'wgs84', // 返回GPS坐标
      success: (res) => {
        const { latitude, longitude } = res;
        console.log(res)
        // 2. 使用QQ地图SDK解析地址
        qqmapsdk.reverseGeocoder({
          location: {
            latitude,
            longitude
          },
          success: (result) => {
            console.log('地址解析成功', result);
            this.setData({
              markers: [{
                id: 1,			// 标记点id
                // iconPath: '/images/gps.png',	// 图标路径
                longitude, 		// 经度
                latitude,		// 维度
                width: 30,   // 图标宽度（像素）
                height: 44,   // 图标高度（像素）
                label: {
                  content: '东莞城市学院', // 标记上显示的文本
                  color: '#000',           // 文本颜色
                  fontSize: 14,            // 字体大小
                  bgColor: '#ffffff',      // 背景色
                  padding: 5,              // 内边距
                  borderRadius: 4          // 圆角
                }
              }],
              
            })
          },
          fail: (err) => {
            console.log('地址解析失败', err);
          }
        });
      },
      fail: (err) => {
        console.log('获取位置失败', err);
        // 处理权限拒绝等情况
        if (err.errMsg.includes('auth deny')) {
          wx.openSetting({
            success: (res) => {
              // 用户授权后再次尝试
              if (res.authSetting['scope.userLocation']) {
                this.onShow();
              }
            }
          });
        }
      }
    });
  },

  openPopup() {
    this.setData({ showPopup: true });
  },

  onPopupClose() {
    this.setData({ 
      showPopup: false,
    });
  },

  handleInnerAction() {
    // 弹层内操作逻辑（如提交、跳转等）
    console.log('执行弹层内操作');
    this.setData({ showPopup: false }); // 可选：操作后关闭弹层
  },

  onLoad: function (options) {
    teaDb.where({
      _id: app.globalData.teaId
    }).get({
      success: res => {
        wx.showLoading({
          title: '正在获取信息',
        });
        console.log(res.data);
        // const examInfo = res.data[0].examInfo;
        const examInfo = res.data[0];
        this.setData({
          examInfo: examInfo
        });
        wx.hideLoading();
      }
    });
  },
  enter() {
    wx.navigateTo({
      url: '../teaScan/teaScan',
    })
  }
})